import Vue from 'vue';
import Vuex from 'vuex';

import getters from './getters';
import app from './modules/app';
import user from './modules/user';
import permission from './modules/permission';
import Passport from './modules/user/Passport';
import screen from './modules/screen';
import UserBasicInfo from './modules/user/UserBasicInfo';
import Role from './modules/user/Role';
import LoginRecord from './modules/user/LoginRecord';
import loginStatistics from './modules/user/loginStatistics';
import newList from './modules/newList';
import columnList from './modules/columnList';
import equipment from './modules/equipment';
import equipProtocol from './modules/equipProtocol';
import group from './modules/group';
import productName from './modules/productName';
import equipDeviceType from './modules/equipDeviceType';
import equipmentCode from './modules/equipmentCode';
import equipmentProtocol from './modules/equipmentProtocol';
import equiRegister from './modules/equiRegister';
import equipmentVideo from './modules/equipmentVideo';
import stock from './modules/stock';
import checkStock from './modules/checkStock';
import controlCenter from './modules/controlCenter';
import timing from './modules/timing';
import dataCenterStatistics from './modules/dataCenterStatistics';
import alertTrigger from './modules/alertTrigger';
import alertContacts from './modules/alertContacts';
import alertContactsGroup from './modules/alertContactsGroup';
import dataCenterHistory from './modules/dataCenterHistory';
import paymentAccount from './modules/paymentAccount';
import paymentRecharge from './modules/paymentRecharge';
import paymentInvoice from './modules/paymentInvoice';
import paymentRecord from './modules/paymentRecord';
import alertRecord from './modules/alertRecord';
import feedback from './modules/feedback';
import briefingContacts from './modules/briefingContacts';
import briefingTrigger from './modules/briefingTrigger';
import briefingRecord from './modules/briefingRecord';

Vue.use(Vuex);

export default new Vuex.Store({
  modules: {
    app,
    user,
    permission,
    Passport,
    UserBasicInfo,
    Role,
    LoginRecord,
    loginStatistics,
    newList,
    columnList,
    equipment,
    equipProtocol,
    group,
    productName,
    equipDeviceType,
    equipmentCode,
    equiRegister,
    equipmentProtocol,
    equipmentVideo,
    stock,
    checkStock,
    controlCenter,
    timing,
    dataCenterStatistics,
    alertTrigger,
    alertContacts,
    alertContactsGroup,
    alertRecord,
    dataCenterHistory,
    paymentAccount,
    paymentRecharge,
    paymentInvoice,
    paymentRecord,
    feedback,
    briefingContacts,
    screen,
    briefingTrigger,
    briefingRecord,
  },
  state: {

  },
  mutations: {

  },
  actions: {

  },
  getters,
});
